package com.wuliang.generate.bean.vo.datasource;

import com.google.gson.annotations.Expose;
import com.wuliang.generate.common.core.basic.BaseVo;
import com.wuliang.generate.bean.entities.datasource.DatasourceSchema;
import com.wuliang.generate.bean.entities.datasource.DatasourceTable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.util.Set;

/**
 * @author WuLiang
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "前后端交互参数——库")
public class DatasourceSchemaVo extends BaseVo<DatasourceSchema> {

    @Expose
    @ApiModelProperty(name = "tableId", value = "字段主键")
    private Integer datasourceSchemaId;

    @Expose
    @ApiModelProperty(name = "schemaName", value = "数据库名", dataType = "string")
    private String schemaName;

    @Expose
    @ApiModelProperty(name = "schemaCharter", value = "数据库编码", dataType = "string")
    private String schemaCharter;

    @Expose
    @ApiModelProperty(name = "schemaCollate", value = "编码引擎", dataType = "string")
    private String schemaCollate;

    @Expose
    @ApiModelProperty(name = "tables", value = "包含哪些表", dataType = "array")
    private Set<DatasourceTable> tables;

}
